Systems and methods for task-based decreasing price markets

ABSTRACT

Embodiments of task-based, decreasing-price markets enable dynamic discounting of items for sale. In one example, users shop for products (e.g., clothing, electronics, or cars) or services (e.g., hotel rooms, plane tickets, or car rentals) using a computing device or mobile device. As the users shop, they view advertisements or perform other tasks, like answering questions, and the system discounts an item&#39;s price based on the number or complexity of the performed tasks. Each user who performs a task gets a chance to buy the item at its discounted price. The other users also get a chance to buy the item at the discounted price. If someone buys the item, the item&#39;s price returns to its starting value. If nobody buys the item, the system discounts the item&#39;s price further as the users perform more tasks until someone buys the item or the item&#39;s price reaches a minimum value.

CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

This application is a continuation of U.S. application Ser. No.13/888,571, entitled “Systems and Methods for Task-Based DecreasingPrice Markets” and filed on May 7, 2013, which is a continuation of U.S.application Ser. No. 13/399,689, entitled “Systems and Methods forTask-Based Decreasing Price Markets” and filed on Feb. 17, 2012, whichclaims the benefit under 35 U.S.C. §119 of U.S. Application No.61/463,592, entitled “Decreasing Price Market Tied to Advertising orCompany Paid Incentive Method and System,” which was filed on Feb. 18,2011. Each of these applications is incorporated herein by reference inits entirety.

BACKGROUND

Traditionally, businesses have used many different pricing models fore-commerce. For instance, eBay allows users to buy and sell items in atraditional auction. Priceline uses a pricing structure that allowssellers to compete for business by trying to meet a buyer's desiredprice. Other entities, such as Groupon, combine aspects of traditionalcoupons with group buying power to offer incentives to both buyers andsellers. In a penny auction, a user pays for the opportunity to bid onan item whose price drops with each bid.

SUMMARY

Disclosed embodiments include a system and method of price discounting.In one case, the system includes a device, such as a server, thatprovides a representation of an item for sale to a plurality of users.The item has a retail price and a discount price, which is discountedfrom the retail price based on tasks performed by one or more of theplurality of users. For instance, the discount price can be discountedfrom the retail price based on a number of tasks performed by users inthe plurality of users. A task module of the device communicates, to afirst user in the plurality of users, information on a task to beperformed by the first user and receives an indication that the firstuser has performed the task. A discount module of the device reduces thediscount price of the item in response to the indication that the firstuser has performed the task, and the device provides the item forpurchase at a price equal to or less than the reduced discount price toeach user of the plurality of users until any user of the plurality ofusers purchases the item at the reduced discount price.

In one example, the task comprises viewing an advertisement, answering aquestion about a product or service, participating in a survey,providing an opinion, providing demographic information, providinginformation about a past or future purchase, signing up for a mailinglist, or downloading an application or file. The task module may alsodetermine or select the task based on a third-party specification orbased on information about the item, the first user, or the plurality ofusers. For example, a task module may use information about the firstuser's age, income, gender, purchasing history, internet browsinghistory, or internet protocol address to determine the task. Similarly,the discount module (or another device) may reduce the discount pricebased on the indication that the first user performed the task, apurchasing history associated with the first user, or a browsing historyof the first user.

In another example, the server or other device may receive a requestfrom the first user to view the discount price of the item before thefirst user can view the discount price. The server or device may alsoprevent any user in the plurality of users from viewing the discountprice before the first user has performed the task, e.g., as determinedfrom the indication that the first user has performed the task. Once auser in the plurality of users has purchased the item at the reducedprice, the discount module enables each user in the plurality of usersto purchase the item at the retail price.

In still another example, the server or device may receive an indicationthat a second user in the plurality of users has performed another task.Upon receiving such an indication, the discount module in the server ordevice can reduce the discount price based on the indication that thesecond user in the plurality of users has performed the other task. Thediscount module may use this reduced discount price as the basis forfuture price reductions.

A system may also include a conversion rate module that performsadditional price-discounting actions as part of a corresponding method.For instance, the conversion rate module can determine a conversion rateat which a user in the plurality of users purchases the item at thediscount price per a number of tasks performed. The conversion ratemodule may also adjust a model used by the device to determine the pricebased on the conversion rate.

Another disclosed embodiment includes a method of providing a decreasingprice market. The system includes a device, such as a server, thatprovides a representation of a plurality of items for sale to aplurality of users. Each item of the plurality of items has a respectiveretail price and a respective discount price, which is discounted fromthe respective retail price based on tasks performed by one or more ofthe plurality of users. When a first user in the plurality of usersviews a first item of the plurality of items, the device providesinformation relating to a task to the first user. When the devicereceives an indication that the first user has performed the task, thedevice determines a reduced discount price of a second item of theplurality items. The device responds to the indication that the firstuser has performed the task by providing the second item for purchase atthe discount price to each user of the plurality of users until any userof the plurality of users purchases the second item at the discountprice of the second item. In some examples, the system may prevent anyuser in the plurality of users from viewing any discount price beforethe first user has performed the task.

The foregoing summary is illustrative only and is not intended to be inany way limiting. In addition to the illustrative aspects, embodiments,and features described above, further aspects, embodiments, and featureswill become apparent by reference to the following drawings and thedetailed description.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this specification, illustrate embodiments of the disclosedtechnology and together with the description serve to explain principlesof the disclosed technology.

FIG. 1 depicts a computer network environment suitable for carrying outa task-based decreasing price market.

FIGS. 2A-2F show screen shots of a task-based decreasing price marketthat can be carried out using the computer network environment shown inFIG. 1.

FIG. 3 illustrates a single-item task-based decreasing price market thatcan be carried out using the computer network environment shown in FIG.1.

FIG. 4 illustrates a multi-item task-based decreasing price market thatcan be carried out using the computer network environment shown in FIG.1.

FIG. 5 depicts a timed task-based decreasing price market that can becarried out using the computer network environment shown in FIG. 1.

FIG. 6 illustrates relationships among items for sale, users, and tasksin a model used to determine price changes in a task-based decreasingprice market.

FIGS. 7A and 7B depict computing devices suitable for acting as theclients and servers shown in FIG. 1

DETAILED DESCRIPTION

Following below are more detailed descriptions of various conceptsrelated to, and embodiments of, inventive systems, methods, andapparatus for task-based decreasing price markets. The conceptsintroduced above and discussed in greater detail below may beimplemented in any of numerous ways, as the disclosed concepts are notlimited to any particular manner of implementation. Examples of specificimplementations and applications are provided primarily for illustrativepurposes.

An Overview of Task-Based Decreasing Price Markets

One example of the technology disclosed herein is a method forimplementing a task-based decreasing price market based on dynamic,variable pricing. As used herein, a market is a forum for exchanginggoods and services; typically, one or more sellers offer goods andservices to one or more buyers. A task-based decreasing price market isa market in which the seller lowers the price of an item when a firstbuyer completes a particular task and uses this reduced price, ordiscount price, as the basis for future offers to other buyers dependingon whether or not the first buyer purchases the item at the discountprice. The seller may lower the price every time a buyer completes atask until someone buys the item, at which point the seller may raisethe price (e.g., to its original value).

In some embodiments, the tasks may involve the transfer or exchange ofinformation. For instance, the system may present or transferinformation to the user, e.g., in the form of an advertisement. Thesystem may also receive information from the user, e.g., in the form ofanswers to questions about the user's identity, habits, or preferences.A task may involve or include the transfer of information from thesystem to the user, from the user to the system, or both.

FIG. 1 shows a computer network environment 10 suitable for implementinga task-based decreasing price market. The computer network environment10 includes one or more servers 106 a-106 n (collectively, “servers106”) coupled to one or more clients 102 a-102 n (collectively, “clients102”) via a network 104, such as the Internet. Each server 106 and eachclient 102 may be implemented as a separate computer device, e.g., asshown in FIGS. 6 and 7 and described below. As understood by those ofskill in the art, one or more of the servers 106 may be configured toexchange information with one or more of the clients 102 via physicallinks, such as fiber-optic and Ethernet links coupled to routers,switches, etc. that make up the network 104. The severs 106 and clients102 may also be able to send and receive information wirelessly via thenetwork 104.

At least one server 106 (e.g., server 106 n) may include a task module10, a discount module 20, and a conversion rate module 30. Each module(the task module 10, the discount module 20, and the conversion ratemodule 30) can be implemented as processor-executable instructions(“software” or “code”) stored in volatile or nonvolatile memory in oraccessible by the server 106 n. A particular client 102 may alsoexecute, store, or execute and store one or more portions of the codeassociated with the task module 10, the discount module 20, and theconversion rate module 30. Each module 10, 20, and 30 may also beimplemented in firmware, hardware (e.g., as application-specificintegrated circuits, field-programmable gate arrays, or another general-or special-purpose processor), or as any suitable a combination ofsoftware, firmware, and hardware.

The task module 10 provides and processes information relating to a taskperformed by a user participating in a task-based, decreasing-pricemarket. The task module 10 is communicatively coupled to at least one ofthe clients 102 and may also be communicatively coupled to one or moreof the other servers 106, e.g., via the network 104. The task module 10is configured to provide task information to a client 102 in response toa request for task information from that particular client 102.Exemplary task information includes, but is not limited to informationthat the client 102 may use to present a particular task to a user. Forinstance, task information may include instructions and data forpresenting an advertisement to the user (including the advertisementitself), instructions for presenting questions to the user, instructionsfor recording the user's replies to those questions, etc. The taskmodule 10 may select the task information from among predetermined taskinformation stored in the server's memory, in the client's memory, or inanother memory. The task module 10 may also formulate the taskinformation in real-time based on an analysis of the user's pastbehavior, the behavior of other users, general market trends, orthird-party instructions.

The task module 10 may also be configured to process information,provided by the client or the user, that relates to the user'sperformance of the task. For instance, the task module 10 may beconfigured to process the user's responses to questions that form partof the task. In processing the user's responses, which may be providedvia the client, the task module 10 verifies that the user has completedthe task successfully or to a predetermined degree of satisfaction.

The discount module 20 is communicatively coupled to the task module 10.The discount module 20 is configured to change the price of one or moreitems for sale in response to an indication from the task module 10 thata user has performed a task satisfactorily. The discount module 10 maybe configured to reduce the price of an item by a predetermined amount,such as a fixed amount (e.g., 50 cents), a progressively decreasingamount (e.g., 5% of the current price), a progressively increasingamount, an arbitrary amount, or any other suitable amount. The discountmodule 20 may select the price reduction based on instructions from theseller, instructions from a third party, an analysis of the user's pastpurchasing habits, an prediction of the user's likely purchasingdecision, an analysis of market behavior, etc.

The conversion rate module 30 is communicatively coupled to the discountmodule 20 and is configured to track the rate at which users purchaseitems. The conversion rate module 30 may include or be coupled to amemory in which the conversion rate module 30 stores informationrelating to each user's purchasing habits, including the user's profile(e.g., demographic information), a description of the item for sale, theitem's price, the item's retail price, the item's viewing popularity,the item's sales rate, the user's past purchases, the user's location,the time of day, the day of the week, the time of year, etc. Theconversion rate module 30 may also be configured to analyze therelationship(s) among the conversion rate and the stored information.The conversion rate module 30 may be configured to provide feedbackbased on this analysis to the task module 10 and the discount module 20so as to increase the likelihood that the user will purchase the itembeing viewed.

In some embodiments, the server 106 n includes a task module 10′ that isalso configured to select the task based on the relationship between afirst item viewed or selected by the user and a second item whose priceis reduced based on the user's performance of a task. In theseembodiments, the server 106 n may also include a discount module 20′,communicatively coupled to the task module 10′, that is configured todecrease the second item's price based on the user's performance of atask. Such a server 106 n may also include a conversion rate module 30′,communicatively coupled to the discount module 20′, that is configuredto determine the conversion rate for the second item, possibly based onthe relationship between the first item and the second item.

Participating in a Task-Based Decreasing Price Market

Task-based decreasing price market-style pricing could be used as abasis for an e-commerce website or as a software application that couldbe plugged into an existing website. In one example, a website masterinstalls a software application to create a decreasing price marketbutton near an “Add to Cart” button or “Shopping Cart” button. If theuser presses the decreasing price market button, the website displays acommercial to the user and prompts the user to answer a question beforedisplaying the current discount price to the user. This plug-in orsoftware service operates in the website's back end, allowing thewebsite operator to offer task-based decreasing price markets withminimal effort. The website operator may be charged a license fee or maybe required to pay a royalty to use this technology.

Suppose that a user is interested in a new pair of pants. The user findsa pair of pants on a website that retails for $50 and clicks thewebsite's decreasing-price-market button, which might be labeled “SkinnyPrice It!” or “Price-o-fy,” next to or near an “Add to Cart” button. Thebrowser displays a pop-up screen to the user that tells the user thatperforming a task (such as watching a commercial) will give the user achance to view a discounted price for the pants. The user watches acommercial for a truck and answers a question about the commercial:“What color is the truck in the commercial you just watched? Red, white,or blue?” (The advertisement or task could also be directed to item forsale or to the user.) If the user answers this question correctly, thebrowser displays a pop-up window or other message that says, “Thank you!You just helped lower the price of a product.” In response to the user'scorrect response, the browser shows a current discounted price—e.g.,$43.30—for the pair of pants.

FIGS. 2A-2F illustrate an embodiment of how a user (buyer) participatesin a task-based decreasing price market. To start, the user shops forclothes, electronics, cars, hotels, plane tickets, car rentals, etc., ona website using client 102 b. As the user shops, the user views picturesor descriptions 20 of goods or services on a website or app with his orher client 102 (e.g., client 102 b) as shown in FIG. 2A. In someembodiments, the displayed information 20 may include the retail price21 of the item for sale. During shopping, the server 106 n offers theuser an opportunity to participate in the decreasing price market, e.g.,by clicking on a participation button 26 displayed on the website (e.g.,near a shopping cart button 24) via the client 102 b. When the userclicks the participation button 26, the client 102 b sends a request fortask information to the server 106 n. The task module 10 in the server106 n responds to the task request by sending the task information tothe client 102 b. The client 102 b uses the task information to presentthe task to the user.

In some cases, the task module 10 sends task information that includescomplete information about the task, including but not limited to:advertisement information (e.g., the advertisement itself); demographicsurvey questions; questions about products, brands, advertisements, orpolitical issues; contact information about sales of a particularproduct or service (lead generation); etc. In other cases, the taskmodule 10 sends task information that simply triggers the task. Forinstance, the task module 10 may send a message to the client 102 b thatinstructs the client 102 b to select and display one of several videoadvertisements stored in the client's local memory, e.g., based on arandom selection, the user's past viewing or purchasing history, otherusers' past viewing or purchasing history, instructions from a thirdparty, etc.

For new users, or users who want additional instruction, the client 102b may display instructions 28 that illustrate how the decreasing pricemarket works as shown in FIG. 2B. These instructions 28 may be static(e.g., in the form of text, pictures, or both) or dynamic (e.g., in theform of video or animation). Once the user has read the instructions 28(or simply decided to skip directly to performing the task), the userproceeds to the task itself, which in this case involves watching anadvertisement 30, as shown in FIG. 2C. In some embodiments, the browserprompts users to answer questions about their interests, hobbies, buyinghabits, future purchases, or income. For example, the users may providedemographic information on themselves to earn credits that let them viewdiscounted prices without watching commercials or performing other fewtasks. In one case, the browser may prompt the user to answer a questionin return for skipping commercials: “What is your yearly income? Byanswering this you can skip 5 commercials.”

Once the user has watched the advertisement 30, the client 102 b sends averification to the server 106 n that the user has actually performedthe task. For instance, the client 102 b may ask the user a verificationquestion 32 (e.g., “The man at the end was wearing?”) as shown in FIG.2C, collect the user's answer to the verification question 32, and sendthe user's answer to the server 106 n. In some embodiments, the user'sperformance may involve providing information (e.g., an answer to asurvey question) that can be used for verification. The server 106 nreceives the verification information, and the task module 10 verifiesthat the user has indeed completed the task.

The discount module 20 reduces the price of one or more of the items forsale in response to verification that the user has completed the taskand displays a discount price 34 to the user, as shown FIG. 2D. Theclient 102 b enables the user to buy or pass on the item at the discountprice 34, e.g., by providing appropriate buttons 36. If the user buysthe item at the discount price 34, the client 102 b may display a form40 that enables the user to enter his or her purchasing credentials(e.g., user name, password, payment method and authorization, shippingaddress, billing address, etc.). If the user decides not to buy theitem, the client 102 b may display a pop-up or other information thatasks the user, “Why did you decide not to buy?,” or “What price wouldyou buy at?” In some cases, the client 102 b may offer the user thechance to name his or her price and to purchase the item at the namedprice (provided that the named price is authorized), possibly in returnfor performing one or more extra tasks.

Whether or not the user decides to buy the item, the client 102 b mayalso display information about opportunities to purchases additionalproducts at discounted prices. For instance, the client 102 b may offerthe user the chance to buy a second copy of the item at the discountedprice. The client 102 b may offer the user the chance to buy relateditems at discounted prices or give the user a coupon good for futurediscounts or a credit good for viewing discounted prices without havingto perform a task.

In some cases, the client 102 b may display a clock or countdown timer38 that indicates how long (e.g., 60 seconds) the discounted price isgood for. This might prompt the user to decide whether or not topurchase the pants or to pass. If the user purchases the pants, thesystem lists the pants at retail price (e.g., $50) and resets thediscount pricing process. If the user decides not to buy the jeans atthe current discounted price, the client or the server saves the currentdiscounted price as the starting point for the next user. The randomprice and countdown clock each create a buying impulse for consumers.Each user must decide if the current discounted price is right for them.

Depending on the status of the decreasing price market, the discountmodule 20 may reduce the price from an original price (e.g., retailprice) to a discount price, or the discount module 20 may further reducean already-reduced discount price. The discount module 20, via theserver 106 n, provides every user in the group (e.g., everyone who canaccess the website via a client 102, all users in a particular marketsegment, etc.) with the opportunity to buy the item at its new reducedprice. Every time someone in the group completes a task, the item'sprice drops further, until eventually someone in the group buys theitem. In some cases, the price may drop all the way to zero; in othercases, the price may drop to a predetermined value (e.g., wholesalevalue or cost). As soon as someone buys the item, the item's priceincreases, e.g., to its original (retail) value or to a predeterminedvalue (which may be discounted from the retail value).

This decreasing price market, which allows users compete against eachother for discounted goods and services, can be driven by advertisingdollars or other such revenue from companies willing to pay to lowerprices for consumers. The drop in price may also be supplemented withthe difference between wholesale price and retail price minus profitmargin desired. That is, the company may use some of its profit marginto offset the cost of discounting the item. For instance, instead ofgiving new customers 20% off, a company may apply the cost of anacross-the-board discount to a pricing system that lowers prices evenmore effectively. In addition, the company may control the number ofusers eligible to participate in a decreasing price market, the numberof products and services eligible for discounting, and the rate at whichthe products and services change in price using a server 106 or othersuitable electronic device.

In some embodiments, the system may generate leads, and the revenuegenerated from the leads may go into a pool. This revenue pool could beused to lower the prices of products being viewed by users. The systemmay drop each price by a random amount, an amount based on userpurchasing history, an amount based on sales of the same item or relateditems, an amount based on third-party instructions, etc. The system maypresent the reduced price to a user as a one-time discount price. Whensomeone does buy an item at its discount price, the item's price resetsto its retail value before dropping again. The system regulates how muchmoney comes in via lead generation, and may also regulate the moneyapplied to price discounts. For instance, the system could allocate moreor less money to discounting popular items, giving discounts to loyalviewers, discounting clearance items, etc.

One added value for a website that uses task-based decreasing pricemarket pricing is an increase in conversion rates for purchases. Theprofit from each sale may be supplemented by advertising dollars orother third-party payments to discount the products in return forspecifying tasks done by the users or receiving information relating totasks done by the users. Task-based decreasing price markets represent achange in the value proposition of advertising. In the traditionalmodel, a consumer views an advertisement to access media content (e.g.,a television show). In task-based decreasing price markets, the valueproposition for consumers is better prices—for the items the consumerswant to purchase—in exchange for viewing advertisements.

Another added value for the website is the increase in web traffic. Theaverage user may spend more time on the website per visit, and the totalnumber of visits to the website may increase as each user comes back tothe website to check prices again and again. With decreasing pricemarket pricing, a user may decide the product is too expensive today,but would realize that if they come back there is a chance that theproduct could be at a price they are willing to pay. This motivates theusers to return to the website many time more than if the website uses atraditional pricing system. Conversely, if the price was static (e.g.,at retail price or a constant discount), the user might look at theproduct, decide they couldn't afford it, and never return to the websiteagain.

A Single-Item Task-Based Decreasing Price Market

FIG. 3 is a flowchart that illustrates a task-based decreasing pricemarket process 200 for a single item. Like all the embodiments of thedecreasing price markets disclosed herein, the process 200 can beimplemented using a suitable computer-based system or environment,including the one shown in FIG. 1. The process 200 begins in step 202with a server (e.g., server 106 n) or other electronic device providinga description of an item for sale to one or more users (e.g., viaclients 102). The description may include photographs or illustrationsof the item, a text description of the item, and user reviews of theitem. In some embodiments of the process 200, the description includesthe item's retail price, its current (discount) price, or both; in otherembodiments of the decreasing price market, the server 106 prevents(e.g., does not provide or cause) the client 102 from displaying thediscount price until after the user has completed a particular task.

Hiding the discount price may encourage users to treat shopping like agame, which in turn may cause users to adopt different shopping styles.For instance, a given user may follow a single product by performingtasks and checking prices often until eventually deciding to purchasethe item. Another user may follow a “browsing” style: the user may lookat different products and, if a particular product is at a good discountprice, the user may purchase it. Otherwise, the user may continuebrowsing.

Performing Tasks to Lower Prices

While browsing, a particular user may decide to participate in thetask-based decreasing price market, e.g., by clicking a button displayedon a website or app via the client. The user's action causes the clientto send a task request to the server, which receives the task request instep 210 using a task module 10. The task module 10 determines aparticular task in step 212, e.g., from among a number of predeterminedtasks in a fixed or random rotation. The task module 10 may alsodetermine the task based on information about the user, such as theuser's internet protocol (IP) address; feedback from the user, such asdata about the user's purchasing habits; feedback from other users,e.g., in the same demographic group; or any other suitable information.In another case, the task module 10 may formulate the task in real timebased on information gathered about the user during the browsingsession. In some embodiments, the task module 10 may determine or selectthe task based on a third-party request. For example, the task module 10may select a particular advertisement (e.g., for a car) or set ofquestions (e.g., about the advertisement or the car) as the task basedon a request from an advertiser or polling organization.

Suitable tasks include, but are not limited to: viewing anadvertisement, answering a question about a product or service,participating in a survey, providing an opinion, providing demographicinformation, providing information about a past or future purchase,signing up for a mailing list, and downloading an application or file.Other suitable tasks include, but are not limited to: taking a360-degree virtual tour of a product or space, such as a hotel room;customizing a product (e.g., a user may build and price a car, adddetails to sneakers, or dress a model with clothing); sharing contentwith friends through social media; provide referrals (leads) for aparticular service (e.g., by giving friends' email addresses); agreeingto perform product testing and providing results of product testing;providing reviews of products (e.g., to e-commerce sites, such asAmazon.com or Yelp.com); providing explanations of purchasing decisions;submitting ideas for new products or brands; rating or reviewingexisting or proposed products (e.g., voting on new clothing designs forthe next season); and rating the quality or relevance of video content.A task may also involve viewing and cataloging video content or othercontent (e.g., a 30-second video clip) to facilitate content searches.

In step 214, the task module 10 sends information relating to the task,such as data for displaying an advertisement or a set of questions, tothe client for presentation to the user. In some cases, the taskinformation may include everything that the client needs to prompt theuser to perform the task, e.g., streaming video when the task involvesviewing an advertisement. In other cases, the task information mayprompt the client to retrieve locally or remotely stored information.For instance, the decreasing price market server may prompt the clientto retrieve streaming video from another server or site (e.g., YouTube).The task module 10 may communicate this task information via anysuitable channel or network, including, but not limited to wirelesschannels, wired channels, and combinations of wired and wirelesschannels.

Verifying Task Performance

In step 216, the server or the client verifies that the user hasperformed the task in response to the user's performance of the task.For instance, the server or the client may prompt the user to answer aquestion about the task, such as naming the color of a car displayed inan advertisement, or to decipher a verification puzzle, such as aCaptcha phrase or picture. In some embodiments, the task itself mayyield verification information, such as answers to survey questions.

Even if the user completes the task, it is still possible for the userto answer the verification question incorrectly. In some cases, theclient may use a pre-verification prompt to reduce the chances ofgetting such a “false negative” verification. The pre-verificationprompt may include information that foreshadows the verificationquestion: for instance, the pre-verification prompt may involve tellingthe user to pay attention for an image (e.g., a logo), phrase, or eventdepicted during an advertisement. During the advertisement, the clientdisplays the image in a randomly selected location on the screen (e.g.,the top left corner, top right corner, bottom left corner, or bottomright corner), in a particular color, etc. In cases where the clientdisplays an image, the client may display the image for a brief,randomly selected interval during the advertisement. At the end of theadvertisement, the client asks the user to identify the location of theimage and uses the answer to verify that the user has completed thetask.

Verification prevents bots or other automated means from gaming thedecreasing price market or artificially depressing the discount price.If the task module 10 determines that the user has not performed thetask or has performed the task inadequately, the task module 10 mayprompt the website or app to display the item description again or todisplay a message indicating that the task has timed out. The taskmodule 10 may also reset or time out if the task module 10 does notverify that the user has completed the task within a fixed period (e.g.,five minutes).

Verification also provides an opportunity to get feedback from the userson the tasks, the items for sale, or anything else of interest. Feedbackcan include the answers to questions answered by the user in performingthe task or in responding to a verification question that the useranswers after performing the task. The task module 10 stores thisfeedback in a database or data store hosted in local or remote memory instep 218. As described above, the task module 10 may use this feedbackinformation to determine the task for the user to perform.

Revenue can also be made for substituting the verification question fora survey or lead generation question. For instance, the server or clientcould prompt a user to answer a question about the subject of anadvertisement (e.g., the car in a car commercial). The server or theclient collects this data for sale to the car manufacturer or theadvertising agency. The client or server could also prompt the user toredraw the company's logo or come up with a new tag line. In anotherexample, the user plays a game that the company has created that is usedto create brand awareness. In other words, the company pays to discountthe product using this model for the user doing something for thecompany.

In another example, the server or client could prompt a user to answer aquestion about their planned purchases (e.g., “Do you plan to buy a carin the next month, 3 months, 6 months, 12 months?”). This is an exampleof lead generation; the leads could be sold back to the car company.Another avenue for revenue generation is to collect and sell data on theusers using the system. This information about demographics, buyinghabits, preferences, etc. could be sold to an interested third party orkept to refine operation of the website.

As understood by those of skill in the art, the client or the server canperform any of these task-related actions. In some embodiments, theuser's action may cause the client itself to receive and process thetask request as described above using a task module 10 or anothersuitable module or component. For instance, a dedicated app orapplication on the client may receive, process, and respond to the taskrequest using locally or remotely stored information about the user'sidentity, habits, or desires.

Changing Prices Based on Tasks Performed by Users

In step 220, the discount module 20 determines a reduced discount pricefor the item responsive to the user's performance of the task. In somecases, the discount module 20 may reduce the discount price by a fixedamount (e.g., $1) or by a fixed percentage of the retail price or of thecurrent price. In other cases, the discount module 20 may reduce theprice by amount based on information about the item, other items (e.g.,a competing product), the user, other users, a specification from athird party, etc. For instance, the discount module 20 may track aparticular user's buying habits, the rate at which the item is sellingat a given discount price, the conversion rate given the user's taskperformance, etc. and adjust the price by an amount tailored to thesituation. This allows for flexible response to changing demand for anitem and to changing demand among a particular demographic group.

In step 222, the discount module 20 provides each user with the chanceto buy the item at a price equal to or lower than the reduced discountprice. In some cases, the discount module 20 gives the user whoperformed the task the first chance to buy the item at the reduceddiscount price. If that user declines the offer, the discount module 20may publish the reduced discount price to every user—possibly for alimited time (e.g., one minute). Or the discount module 20 may use thereduced discount price as the starting point for its next pricereduction after the discount module 20 receives notification of anotherperformed task. In any event, each user in the group of users maypurchase the product or service at a price equal to or less than thediscounted price, regardless of whether or not the user has performedany tasks. When the price has decreased enough from the starting (e.g.,retail) price, a given user (the buyer) may choose to buy the product orservice. As soon as someone buys the product or service at thediscounted price, the price resets to its original value (or to adifferent value), and the discounting process begins again. Thus,embodiments of task-based, decreasing-price markets enable the users tocompete with each other to purchase the product at the lowest possibleprice.

If the system sells the item at the reduced discount price (step 224),the system resets the price of the item (step 228). For instance, thesystem may raise the price of the item back to the retail price. In someembodiments, the system may raise the price to a value between theretail price and the reduced discount price (the sale price) based onthe conversion rate, the item inventory, a request from a third party,etc. The system can initiate a new task-based decreasing price marketprocess 200 for the same item if desired. The server or the client mayalso notify the users that the item has been purchased at the discountprice and, if appropriate, that a new decreasing price market isstarting.

Adjusting Conversion Rate and Pricing Models

In step 225, the conversion rate module 30 collects purchase data,including the price at which the item was sold and possibly informationabout the purchaser, and uses the collected purchase data to determinethe conversion rate. If desired (e.g., as indicated by the computedconversion rate), the conversion rate module 30 adjusts the discountingapplied by the discount module 20 in step 226. To do this, theconversion rate module 30 may adjust a model that represents aparticular user's purchasing habits, the purchasing habits of a group ofusers, sales trends associated with the item, etc.

Advertising metrics can be used to determine the conversion ratesassociated with task-based decreasing price markets. In advertising,there is the cost per impression (CPM) rate, which can be characterizedas the online advertising cost per thousand views. A typical cost for atelevision commercial is about $25 CPM. This means it costs 0.025 centsper user who views the television commercial. (Hulu.com has a CPM rateof $60 for their online commercial.) This rate can get even higher ifthe website has more data on the demographics (personal information) ofthe user being exposed to the advertisement. So the more information thewebsite can collect on its users, the more the website can charge fordisplaying an advertisement.

In task-based decreasing price markets, the CPM rate can be adjusted togive the website operator or software provider income from theadvertising revenue associated with the “per view” rate (CPM rate) ofthe users. For instance, if a website has a $40 CPM rate, its operatorcould lower the price of its products by 3 cents and keep 1 cent forprofit every time a user views an advertisement or performs another taskto view a discounted price. A $20 dollar product or service would dropin price to zero dollars after 667 advertisement views given a pricereduction of 3 cents per view.

The website operator(s) or software supplier(s) may also make a profiton the difference between the reduced discount prices and the retailprices of the purchased products and services. Even if a product sellsfor free, there may still be advertising revenue: using the numbersabove, if the item's wholesale price is $10 and its retail price is $20,but it sells for $0, advertising dollars may paid $20 so profit forproduct is $10 plus advertising profit margin of $0.01×667 views =$6.67for a total profit of $16.67.

The item's price can also be decreased by utilizing the differencebetween wholesale and retail, but subtracting out a set profit margin.In the example above, the profit is $10, but the website operator couldchange the profit margin to only $5 dollars and have additional $5dollars to use in tandem with the prices decreasing when users view anadvertisement. This could be used in many different ways, including:directly adding the profit margin back into pricing system; randomlyadding the profit margin onto any decrease associated with theadvertising views; discounting some or all items by a fixed or variablepercentage; offering additional discounts, such as coupons or sales; andgrouping the additional funds together and using this pool to offerincentives, such as bonuses for valued users or for referrals of newusers.

Instead of using CPM rates, a model for determining price reductions ina task-based decreasing price market may leverage different ways toprice the advertising impressions or tasks performed by a user. Forinstance, the seller may allow third parties to compete in a decreasingprice market-based media pricing model in the bidders select and bid forindividual advertising impressions (users). With specific demographicinformation and feedback on advertising, one embodiment includes a modelthat offers a different paradigm that CPM rate for pricing media in theonline realm. This is useful because if the system uses an exchange(e.g., Google AdWords) or real-time bidding, the advertising rate maychange constantly.

A Multiple-Item Task-Based Decreasing Price Market

FIG. 4 depicts a process 300 for executing a multiple-item task-baseddecreasing price market. Unlike the single-item process 200 illustratedin FIG. 3, the multiple-item process 300 involves discounting an itemother than the item viewed by the user. For instance, the user may viewa first item, such as a pair of high heels, and the system may discounta second item, such as a pair of sneakers. In some cases, the systemtells the user which item is to be discounted before the user hasperformed the task; in other cases, the system chooses or reveals thediscounted item only after the user has performed the task. Likewise,the system may or may not reveal the retail and discounted prices forboth the first and second items until after the user has performed atask.

Like the single-item process 200 illustrated in FIG. 3, themultiple-item process 300 begins with providing a description of a firstitem to a user (step 302). A task module 10′ receives a task requestfrom the user (step 310) and may determine or select a task for the userto perform (step 312) in response to the task request. The task module10′ communicates the task information to the user (step 314) andverifies that the user has performed the task (step 316). The taskmodule 10′ may also store task feedback (step 318) for use indetermining tasks for future users.

In step 320, a discount module 20′ changes (e.g., reduces) the price ofa second item responsive to the user's completion of the task. The firstand second item may be related in some way—e.g., the first item may be asuit, and the second item may be a tie—or the two items may becompletely unrelated. The items may also be identical and bundledtogether as part of a package—e.g., buy one, get another at a discountedprice. The discount module 20′ may also select the second item, possiblyrandomly or based on a request from the user; the user's shopping habitsor identity (e.g., gender, age, income level, marital status, or IPaddress); a third party request (e.g., a supplier may want to push salesof a particular item); or the seller's selection (e.g., a seller maywish to reduce inventory of a particular item).

The discount module 20′ may determine or reduce the discount price ofthe second item by a fixed amount (e.g., $1) or by a fixed percentage(e.g., 5%) of the retail price or of the current price. In other cases,the discount module 20′ may reduce the price by amount based oninformation about the first item, the second item, other items (e.g.,competing products), the user, other users, a specification from a thirdparty, etc. For instance, the discount module 20′ may track a particularuser's buying habits, the rate at which the item is selling (theconversion rate) at a given discount price, the conversion rate giventhe user's task performance, the conversion rate given sales of thefirst item, etc. and adjust the price by an amount tailored to thesituation. This allows for flexible response to changing demand for anitem and to changing demand among a particular demographic group.

In step 322, the discount module 20′ offers the second item to the userat the discount price in response the selection of the second item andthe determination of the second item's discount price. The discountmodule 20′ also offers the second item to other users, possibly afterthe first user has had a chance to purchase the second item at itsdiscount price. As soon as someone buys the second item (step 324), thediscount module 20′ resets the second item's price (step 328), and thedecreasing price market may resume, either with the same combination ofitems or a different combination of items.

A conversion rate module 30′ may collect purchase data, such as theprice at which the second item was sold, information about thepurchaser, and information about the first and second items. Theconversion rate module 30′ uses the collected purchase data to determinethe conversion rate in step 325. If desired (e.g., as indicated by thecomputed conversion rate), the conversion rate module 30′ adjusts thediscounting applied by the discount module 20′ in step 326. To do this,the conversion rate module 30′ may adjust a model that represents aparticular user's purchasing habits, the purchasing habits of a group ofusers, sales trends associated with the first and second items, etc.

A Timed or Fixed Task-Based Decreasing Price Market

Another way to implement a task-based decreasing price market is to letthe users build up counts to view discount prices by watching ads orperforming other tasks. The users' counts may be in the form of acertain number of discount prices views or in the form of a certain timelimit for viewing discount prices. For example, suppose that a userwatches five commercials in a row; in return, the system may enable herto view the current discount prices of up to five products of herchoice. In some embodiments, performing one task may entitle the user tothirty seconds' worth of unlimited discount price viewing.

FIG. 5 depicts a data flow suitable for implementing a timed or fixedtask-based decreasing price market process. In step 402, the systemprovides task information to one or more users. If the system determinesthat a user has performed a task (step 404), the system gives the user aviewing credit in the form of a count or time (step 406). If the userhas positive viewing credit (step 408), the system provides the userwith the chance to view one or more discount prices via a client and, insome embodiments, gives the user a chance to buy the associated item atthe discount price. The system decrements the user's available viewingcredit (step 412), and the user either continues to view discount pricesor gets the opportunity to earn more credit as appropriate.

In some embodiments, a timing mechanism may force a user to view anadvertisement to see products. The user is able to view products and seetheir retail prices (or prices set by the website). If the user clicksagain on a product, the website presents the current discounted price tothe user. After a certain time frame (e.g., 30 seconds, 60 seconds,etc.), the system displays a another advertisement (or informationrelating to some other suitable task) that blocks or replaces thecurrent discounted price from the user's perspective. The systemresponds to the user's viewing of the advertisement by lowering theprice of at least one of the products on the website by a predeterminedamount. Once the user has finished viewing the advertisement, the usermay return to shopping on the website. There are many ways to have usersview commercials. For instance, the system user may present the userwith a commercial each time the user clicks on a button to see theprice. Other viewing control mechanisms are possible as well.

The timing mechanism that forces the user to watch an advertisement mayalso include a count mechanism that counts how many times the user viewsthe current price. Once this count mechanism is triggered, the userwould be forced to view an advertisement. This may prevent users fromjumping on to the website and viewing, for example, six products'current prices, then hopping back off the website. The user could dothis continually or continuously without triggering the timingmechanism. So if after, for example, the count mechanism was set tofour, the count mechanism would trigger after four price views, forcingthe user to view an advertisement. The website could also track a user'sactivity (e.g., by having them log in) with this mechanism even if theylogged on and off many times a day.

Maintaining Ratios of Items to Users and Users to Tasks

FIG. 6 depicts the process which the system can run in the background tobalance out the ratio of products 502 to users 506 and the ratio ofusers 506 to performed tasks 508 (e.g., ads viewed). The process mayalso the control the rate at which the discount price drops. The processcan maintain a constant ratio of these factors by checking the number ofusers 506 on the website and the number of tasks 508 (advertisementsbeing viewed) and adjusting the number or type of products 502 (blocks504 and 512) as appropriate. For instance, the system may increase ordecrease the selection of items 502, replace or remove items 502, orchange the prices of items 502 as desired. If the system is batchingusers 504 by IP address or log-in information, the system can adjust thesize of the user groups to make sure the ratios keep the discount rateat its desired value (blocks 504 and 514).

Another way to keep these factors in balance is to have users registerfor an account and group these users into predetermined segments. Eachsegment of users would have a set number of products (e.g., groups of10,000 users to 1,000 products). Grouping the users together preventsthe users' numbers and aggregate demand from exceeding the capability ofthe website—for instance, a website that serves 10 million users may notbe capable of providing the 1 million products desired by its users. Asthe number of users grows, the system batches users together to keep thepricing model working correctly, possibly by capturing each user's IPaddress and batching the users based on IP address or subnet or by usinglog-in information associated with each user.

Defining and establishing a more precise pricing model based on marketforces (e.g., as represented by task and purchase feedback) facilitatese-commerce transactions in a more innovative and controlling way.Task-based decreasing price markets can be used to lower pricesincrementally from a retail price to a discount price, in either arandom order or a systematic order, because users are watchingadvertisements, at a “to be determined time frame,” which in turn uses a“cost per view” calculation to determine the incremental change inprice. A user tolerates advertisements or other tasks (e.g., surveys,polls, disclosing personal information, etc.) to participate in thisfree, value-driven decreasing price market of products or serviceshosted on a website or as an application.

The system may also group or batch users together in response to oranticipation of changes in the conversion rate or the rate at which theitem's discount price changes. For instance, if 100,000 users viewadvertisements associated with only 100 products, the price of eachproduct may decrease too fast for the users to purchase a product. Theuser's probability of getting the product at the price they want is alsodiminished greatly. For example, if there are 100 users and 100products, and the discount price drops by 3 cents every 6-9 minutes orevery time a user views a commercial, the price drop may be too slow formost users even though the odds of winning the product at a particularprice have now greatly increased. In another example, a user may visitthe website, look around, and leave before ever viewing an advertisementor answering a verification questions, so no product or service would bediscounted. This may make the product discount slower, but could becompensated by adjusting the ratios in FIG. 6 appropriately. In allthree of these cases, the system may add or remove items to achieve thedesired conversion rate and price change rate.

Computing Environments to Implement Task-Based Decreasing Price Markets

Embodiments of the present disclosure can be implemented and deployed invarious network and computing environments, including those illustratedin the accompanying drawings. For instance, although FIG. 1 shows anetwork 104 between the clients 102 and the servers 106, the clients 102and the servers 106 may be on the same network 104. The network 104 canbe a local-area network (LAN), such as a company Intranet; ametropolitan area network (MAN); or a wide area network (WAN), such asthe Internet or the World Wide Web. In some embodiments, there aremultiple networks 104 between the clients 102 and the servers 106. Inone of these embodiments, one network 104′ (not shown) may be a privatenetwork and another network 104 may be a public network. In another ofthese embodiments, a network 104 may be a private network and a network104′ a public network. In still another of these embodiments, networks104 and 104′ may both be private networks.

The network 104 shown in FIG. 1 may be any type or form of network andmay include any of the following: a point-to-point network, a broadcastnetwork, a wide area network, a local area network, a telecommunicationsnetwork, a data communication network, a computer network, an ATM(Asynchronous Transfer Mode) network, a SONET (Synchronous OpticalNetwork) network, a SDH (Synchronous Digital Hierarchy) network, awireless network, and a wireline network. In some embodiments, thenetwork 104 may comprise a wireless link, such as a radio-frequencychannel, an infrared channel, or satellite band. The topology of thenetwork 104 may be a bus, star, or ring network topology. The network104 may be of any such network topology as known to those ordinarilyskilled in the art capable of supporting the operations describedherein. The network may comprise mobile telephone networks utilizing anyprotocol or protocols used to communicate among mobile devices,including advanced mobile phone system (AMPS), time division multipleaccess (TDMA), code division multiple access (CDMA), frequency divisionmultiple access (FDMA), global system for mobile communications (GSM),general packet radios service (GPRS), or universal mobiletelecommunication system (UMTS). In some embodiments, different types ofdata may be transmitted via different protocols. In other embodiments,the same types of data may be transmitted via different protocols.

In some embodiments, the servers 106 may be grouped logically, e.g., asa server farm 38 or a machine farm 38. In another of these embodiments,the servers 106 may be dispersed geographically. In yet anotherembodiment, the machine farm 38 may be administered as a single entity.In still other embodiments, the machine farm 38 includes a plurality ofsmaller machine farms. The servers 106 within each machine farm 38 canbe heterogeneous—i.e., one or more of the servers 106 or machines 106can operate according to one type of operating system platform (e.g.,WINDOWS NT, manufactured by Microsoft Corp. of Redmond, Wash.), whileone or more of the other servers 106 can operate on according to anothertype of operating system platform (e.g., Unix or Linux).

In one embodiment, servers 106 in the machine farm 38 may be stored inhigh-density rack systems, along with associated storage systems, andlocated in an enterprise data center. In this embodiment, consolidatingthe servers 106 in this way may improve system manageability, datasecurity, the physical security of the system, and system performance bylocating servers 106 and high performance storage systems on localizedhigh performance networks. Centralizing the servers 106 and storagesystems and coupling them with advanced system management tools may alsoallow more efficient use of server resources.

The servers 106 of each machine farm 38 do not need to be physicallyproximate to another server 106 in the same machine farm 38. Thus, thegroup of servers 106 logically grouped as a machine farm 38 may beinterconnected using a wide-area network (WAN) connection or ametropolitan-area network (MAN) connection. For example, a machine farm38 may include servers 106 physically located in different continents ordifferent regions of a continent, country, state, city, campus, or room.Data transmission speeds between servers 106 in the machine farm 38 canbe increased if the servers 106 are connected using a local-area network(LAN) connection or some form of direct connection.

Additionally, a heterogeneous machine farm 38 may include one or moreservers 106 operating according to a type of operating system, while oneor more other servers 106 execute one or more types of hypervisorsrather than operating systems. In these embodiments, hypervisors may beused to emulate virtual hardware, partition physical hardware,virtualize physical hardware, and execute virtual machines that provideaccess to computing environments. Hypervisors may include thosemanufactured by VMWare, Inc., of Palo Alto, Calif.; the Xen hypervisor,an open source product whose development is overseen by Citrix Systems,Inc.; the VirtualServer; and virtual personal computer (PC) hypervisorsprovided by Microsoft or others.

Management of the machine farm 38 may be de-centralized. For example,one or more servers 106 may comprise components, subsystems and modulesto support one or more management services for the machine farm 38. Inone of these embodiments, one or more servers 106 provide functionalityfor management of dynamic data, including techniques for handlingfailover, data replication, and increasing the robustness of the machinefarm 38. Each server 106 may communicate with a persistent store and, insome embodiments, with a dynamic store.

The server 106 and the client 102 may be deployed as and executed as anytype or form of computing device, including as a computer, tablet, smartphone, network device, or appliance capable of communicating on any typeand form of network and performing the operations described herein. Forinstance, a given server 106 may be or act as a file server, applicationserver, web server, proxy server, appliance, network appliance, gateway,gateway, gateway server, virtualization server, deployment server, SSLvirtual private network (VPN) server, or firewall. In one embodiment,the server 106 may be referred to as a remote machine or a node. Inanother embodiment, a plurality of nodes 290 may be in the path betweenany two communicating servers.

In some embodiments, the status of one or more machines 102, 106 in thenetwork 104 is monitored, generally as part of network management. Inone of these embodiments, the status of a machine may include anidentification of load information (e.g., the number of processes on themachine, CPU and memory utilization), of port information (e.g., thenumber of available communication ports and the port addresses), or ofsession status (e.g., the duration and type of processes, and whether aprocess is active or idle). In another of these embodiments, thisinformation may be identified by a plurality of metrics, and theplurality of metrics can be applied at least in part towards decisionsin load distribution, network traffic management, and network failurerecovery as well as any aspects of operations of the present solutiondescribed herein. Aspects of the operating environments and componentsdescribed above will become apparent in the context of the systems andmethods disclosed herein.

In at least one embodiment, the client 102 may have differentprocessors, operating systems, and input devices consistent with thedevice. For example, in one embodiment, the computing device is aniPhone made by Apple, Inc., or a similar smart phone. In anotherembodiment, the computing device is a Blackberry handheld or smartphone, such as the devices manufactured by Research In Motion Limited.In yet another embodiment, the computing device is a smart phone, PocketPC, Pocket PC Phone, or other handheld mobile device supportingMicrosoft Windows operating systems and software. Moreover, thecomputing device can be any workstation, desktop computer, laptop ornotebook computer, server, handheld computer, mobile telephone, anyother computer, or other form of computing or telecommunications devicethat is capable of communication and that has sufficient processor powerand memory capacity to perform the operations described herein.

In some embodiments, the client 102 includes a combination of devices,such as a mobile phone combined with a digital audio player or portablemedia player. In one of these embodiments, the client 102 is asmartphone—for example, an iPhone manufactured by Apple Computer, or aBlackberry device, manufactured by Research In Motion Limited—that isweb-enabled and can receive and initiate phone calls. In yet anotherembodiment, the client 102 is a laptop or desktop computer equipped witha web browser and a microphone and speaker system, such as a telephonyheadset. In other embodiments, the communications device 102 is aMotorola RAZR or Motorola ROKR line of combination digital audio playersand mobile phones.

Computing Devices to Implement Task-Based Decreasing Price Markets

FIG. 6 is a block diagram of a computing device 198 useful forpracticing an embodiment of the client 102 or a server 106. Thecomputing device 198 includes a central processing unit 121 and a mainmemory unit 122 that are coupled to and communicate via a via a systembus 150 (described in more detail below). FIG. 6 also shows that thecomputing device 198 may include a storage device 128, an installationdevice 116, a network interface 118, an input/output (I/O) controller123, display devices 124 a-124 n (collectively, display devices 124), akeyboard 126, and a pointing device 127, such as a mouse or touchscreen. The storage device 128 may include, without limitation, anoperating system and software to execute some or all of a task-baseddecreasing price market.

The central processing unit 121 can be any logic circuitry that respondsto and processes instructions fetched from the main memory unit 122. Inat least one embodiment, the central processing unit 121 is provided bya microprocessor unit, such as those manufactured by: Intel Corporationof Mountain View, Calif.; Motorola Corporation of Schaumburg, Ill.;Transmeta Corporation of Santa Clara, Calif.; International BusinessMachines of White Plains, N.Y.; or Advanced Micro Devices of Sunnyvale,Calif. The computing device 198 may be based on any of these processors,or any other processor capable of operating as described herein. Themain memory 122 may be include static random access memory (SRAM), BurstSRAM or SynchBurst SRAM (BSRAM), dynamic random access memory (DRAM),Fast Page Mode DRAM (FPM DRAM), Enhanced DRAM (EDRAM), Extended DataOutput RAM (EDO RAM), Extended Data Output DRAM (EDO DRAM), BurstExtended Data Output DRAM (BEDO DRAM), Enhanced DRAM (EDRAM),synchronous DRAM (SDRAM), JEDEC SRAM, PC100 SDRAM, Double Data RateSDRAM (DDR SDRAM), Enhanced SDRAM (ESDRAM), SyncLink DRAM (SLDRAM),Direct Rambus DRAM (DRDRAM), or Ferroelectric RAM (FRAM).

The computing device 198 shown in FIG. 6 may support any suitableinstallation device 116, such as a floppy disk drive for receivingfloppy disks such as 3.5-inch, 5.25-inch disks or ZIP disks, a CD-ROMdrive, a CD-R/RW drive, a DVD-ROM drive, a flash memory drive, tapedrives of various formats, USB device, hard-drive or any other devicesuitable for installing software and programs. The computing device 198may further comprise a storage device, such as one or more hard diskdrives or redundant arrays of independent disks, for storing anoperating system and other related software, and for storing applicationsoftware programs such as any program related to the software 120 forthe cash flow management system. Any of the installation devices 116could also be used as the storage device. Additionally, the operatingsystem and the software can be run from a bootable medium, for example,a bootable CD, such as KNOPPIX, a bootable CD for GNU/Linux that isavailable as a GNU/Linux distribution from knoppix.net.

Furthermore, the computing device 100 may include a network interface118 to connect to the network 104 through a variety of connectionsincluding, but not limited to, standard telephone lines, LAN or WANlinks (e.g., 802.11, Ti, T3, 56 kb, X.25, SNA, DECNET), broadbandconnections (e.g., ISDN, Frame Relay, ATM, Gigabit Ethernet,Ethernet-over-SONET), wireless connections, or some combination of anyor all of the above. Connections can be established using a variety ofcommunication protocols (e.g., TCP/IP, IPX, SPX, NetBIOS, Ethernet,ARCNET, SONET, SDH, Fiber Distributed Data Interface (FDDI), RS232, IEEE802.11, IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, CDMA, GSM, WiMax anddirect asynchronous connections).

In one embodiment, the computing device 198 communicates with othercomputing devices 100′ via any type and/or form of gateway or tunnelingprotocol such as Secure Socket Layer (SSL) or Transport Layer Security(TLS). The network interface 118 may comprise a built-in networkadapter, network interface card, PCMCIA network card, card bus networkadapter, wireless network adapter, USB network adapter, modem or anyother device suitable for interfacing the computing device 198 to anytype of network capable of communication and performing the operationsdescribed herein.

The I/O devices may be controlled by an I/O controller 123 as shown inFIG. 6. The I/O controller may control one or more I/O devices such as akeyboard 126 and a pointing device 127, e.g., a mouse or optical pen.Furthermore, an I/O device may also provide storage and/or aninstallation medium 116 for the computing device 198. In still otherembodiments, the computing device 198 may provide USB connections (notshown) to receive handheld USB storage devices such as the USB FlashDrive line of devices manufactured by Twintech Industry, Inc. of LosAlamitos, Calif.

In some embodiments, the computing device 198 may comprise or beconnected to multiple display devices 124, which each may be of the sameor different type and/or form. As such, any of the I/O devices 130and/or the I/O controller 123 may comprise any type and/or form ofsuitable hardware, software, or combination of hardware and software tosupport, enable or provide for the connection and use of one or moredisplay devices 124 by the computing device 198. For example, thecomputing device 198 may include any type and/or form of video adapter,video card, driver, and/or library to interface, communicate, connect orotherwise use the display devices 124. In one embodiment, a videoadapter may comprise multiple connectors to interface to multipledisplay devices 124. In other embodiments, the computing device 198 mayinclude multiple video adapters, with each video adapter connected toone or more of the display devices 124.

In some embodiments, any portion of the operating system of thecomputing device 198 may be configured for using multiple displays 124.In other embodiments, one or more of the display devices 124 may beprovided by one or more other computing devices connected to thecomputing device 198, for example, via the network 104. Theseembodiments may include any type of software designed and constructed touse another computer's display device as a second display device 124 afor the computing device 198. One ordinarily skilled in the art willrecognize and appreciate the various ways and embodiments that acomputing device 198 may be configured to have multiple display devices124.

In further embodiments, an I/O device 130 may act as a bridge betweenthe system bus 150 and an external communication bus, such as a USB bus,an Apple Desktop Bus, an RS-232 serial connection, a SCSI bus, aFireWire bus, a FireWire 800 bus, an Ethernet bus, an AppleTalk bus, aGigabit Ethernet bus, an Asynchronous Transfer Mode bus, a HIPPI bus, aSuper HIPPI bus, a SerialPlus bus, a SCl/LAMP bus, a FibreChannel bus, aSerial Attached small computer system interface bus, or a HDMI bus.

FIG. 7B depicts an alternative computing device 199 in which theprocessor 121 communicates directly with main memory 122 via a memoryport 103. The main memory unit 122 may be one or more memory chipscapable of storing data and allowing any storage location to be directlyaccessed by the microprocessor 121, which may based on or include anysuitable processor, including those described above. The main memory 122may be based on any of the above described memory chips, or any otheravailable memory chips capable of operating as described herein.

The computing device 199 may also include additional elements, such as amemory port 103, a bridge 170, one or more I/O devices 130 a-130 n(generally, I/O devices 130), and a cache memory 140 communicativelycoupled to the central processing unit 121. The main processor 121communicates directly with cache memory 140 via a secondary bus,sometimes referred to as a backside bus. In other embodiments, the mainprocessor 121 communicates with cache memory 140 using a system bus 150.Cache memory 140 typically has a faster response time than main memory122 and may be provided by SRAM, BSRAM, or EDRAM.

The computer device 199 uses both local busses and direct to communicatewith I/O devices 130: the processor 121 communicates with input device130 a using a local interconnect bus while communicating with inputdevice 130 b directly. For instance, the main processor 121 maycommunicate directly with I/O device 130 b via a HYPERTRANSPORT,RAPIDIO, or INFINIBAND I/O port 303. In addition, various buses may beused to connect the central processing unit 121 to any of the I/Odevices 130, including a VESA VL bus, an ISA bus, an EISA bus, aMicroChannel Architecture (MCA) bus, a PCI bus, a PCI-X bus, aPCI-Express bus, or a NuBus. For embodiments in which the I/O device isa video display 124, the processor 121 may use an Advanced Graphics Port(AGP) to communicate with the display 124. In addition,

Like the computing device 198 of FIG. 7A, the computing device shown inFIG. 7B may include or be operatively coupled to any of a wide varietyof input devices 130 a-130 n (collectively, input devices 130)including, but not limited to keyboards, mice, trackpads, trackballs,microphones, dials, and drawing tablets. The computing device 198 mayinclude or be operatively coupled to any of a wide variety of outputdevice including, but not limited to video displays, speakers, inkjetprinters, laser printers, and dye-sublimation printers.

The computing devices 198 and 199 of FIGS. 7A and 7B, respectively, mayeach operate under the control of an operating system, which controlsscheduling of tasks and access to system resources. An embodiment of acomputing device may run any suitable operating system, including butnot limited to: any of the versions of the MICROSOFT WINDOWS operatingsystems, the different releases of the Unix and Linux operating systems,any version of the MAC OS for Macintosh computers, any embeddedoperating system, any real-time operating system, any open sourceoperating system, any proprietary operating system, any operatingsystems for mobile computing devices, or any other operating systemcapable of running on the computing device and performing the operationsdescribed herein. Typical operating systems include, but are not limitedto: WINDOWS 3.x, WINDOWS 95, WINDOWS 98, WINDOWS 1980, WINDOWS NT 3.51,WINDOWS NT 4.0, WINDOWS CE, WINDOWS MOBILE, WINDOWS XP, WINDOWS VISTA,and WINDOWS 7, all of which are manufactured by Microsoft Corporation ofRedmond, Wash.; MAC OS, manufactured by Apple Computer of Cupertino,Calif.; OS/2, manufactured by International Business Machines of Armonk,N.Y.; and Linux, a freely-available operating system distributed byCaldera Corp. of Salt Lake City, Utah, or any type and/or form of a Unixoperating system, among others.

Each computer system described herein can be any workstation, telephone,desktop computer, laptop or notebook computer, server, handheldcomputer, mobile telephone or other portable telecommunications device,media playing device, a gaming system, mobile computing device, or anyother type and/or form of computing, telecommunications or media devicethat is capable of communication. An embodiment of a computer system mayhave sufficient processor power and memory capacity to perform theoperations described herein. For example, the computer system 100 maycomprise a device of the IPOD, IPHONE, or APPLE TV family of devicesmanufactured by Apple Computer of Cupertino, Calif., a PLAYSTATION 2 ,PLAYSTATION 3, or PERSONAL PLAYSTATION PORTABLE (PSP) devicemanufactured by the Sony Corporation of Tokyo, Japan, a NINTENDO DS,NINTENDO GAMEBOY, NINTENDO GAMEBOY ADVANCED, NINTENDO REVOLUTION, or aNINTENDO WII device manufactured by Nintendo Co., Ltd., of Kyoto, Japan,an XBOX or XBOX 360 device manufactured by the Microsoft Corporation ofRedmond, Washington.

CONCLUSION

The above-described embodiments can be implemented in any of numerousways. For example, the embodiments may be implemented using hardware,software or a combination thereof. When implemented in software, thesoftware code can be executed on any suitable processor or collection ofprocessors, whether provided in a single computer or distributed amongmultiple computers.

Further, it should be appreciated that a computer may be embodied in anyof a number of forms, such as a rack-mounted computer, a desktopcomputer, a laptop computer, or a tablet computer. Additionally, acomputer may be embedded in a device not generally regarded as acomputer but with suitable processing capabilities, including a PersonalDigital Assistant (PDA), a smart phone or any other suitable portable orfixed electronic device.

Also, a computer may have one or more input and output devices. Thesedevices can be used, among other things, to present a user interface.Examples of output devices that can be used to provide a user interfaceinclude printers or display screens for visual presentation of outputand speakers or other sound generating devices for audible presentationof output. Examples of input devices that can be used for a userinterface include keyboards, and pointing devices, such as mice, touchpads, and digitizing tablets. As another example, a computer may receiveinput information through speech recognition or in other audible format.

Such computers may be interconnected by one or more networks in anysuitable form, including a local area network or a wide area network,such as an enterprise network, and intelligent network (IN) or theInternet. Such networks may be based on any suitable technology and mayoperate according to any suitable protocol and may include wirelessnetworks, wired networks or fiber optic networks.

The various methods or processes outlined herein may be coded assoftware that is executable on one or more processors that employ anyone of a variety of operating systems or platforms. Additionally, suchsoftware may be written using any of a number of suitable programminglanguages and/or programming or scripting tools, and also may becompiled as executable machine language code or intermediate code thatis executed on a framework or virtual machine.

In this respect, various inventive concepts may be embodied as acomputer readable storage medium (or multiple computer readable storagemedia) (e.g., a computer memory, one or more floppy discs, compactdiscs, optical discs, magnetic tapes, flash memories, circuitconfigurations in Field Programmable Gate Arrays or other semiconductordevices, or other non-transitory medium or tangible computer storagemedium) encoded with one or more programs that, when executed on one ormore computers or other processors, perform methods that implement thevarious embodiments of the invention discussed above. The computerreadable medium or media can be transportable, such that the program orprograms stored thereon can be loaded onto one or more differentcomputers or other processors to implement various aspects of thepresent invention as discussed above.

The terms “program” or “software” are used herein in a generic sense torefer to any type of computer code or set of computer-executableinstructions that can be employed to program a computer or otherprocessor to implement various aspects of embodiments as discussedabove. Additionally, it should be appreciated that according to oneaspect, one or more computer programs that when executed perform methodsof the present invention need not reside on a single computer orprocessor, but may be distributed in a modular fashion amongst a numberof different computers or processors to implement various aspects of thepresent invention.

Computer-executable instructions may be in many forms, such as programmodules, executed by one or more computers or other devices. Generally,program modules include routines, programs, objects, components, datastructures, etc. that perform particular tasks or implement particularabstract data types. Typically the functionality of the program modulesmay be combined or distributed as desired in various embodiments.

Also, data structures may be stored in computer-readable media in anysuitable form. For simplicity of illustration, data structures may beshown to have fields that are related through location in the datastructure. Such relationships may likewise be achieved by assigningstorage for the fields with locations in a computer-readable medium thatconvey relationship between the fields. However, any suitable mechanismmay be used to establish a relationship between information in fields ofa data structure, including through the use of pointers, tags or othermechanisms that establish relationship between data elements.

A flow diagram is used herein. The use of flow diagrams is not meant tobe limiting with respect to the order of operations performed. Theherein described subject matter sometimes illustrates differentcomponents contained within, or connected with, different othercomponents. It is to be understood that such depicted architectures aremerely exemplary, and that in fact many other architectures can beimplemented which achieve the same functionality. In a conceptual sense,any arrangement of components to achieve the same functionality iseffectively “associated” such that the desired functionality isachieved. Hence, any two components herein combined to achieve aparticular functionality can be seen as “associated with” each othersuch that the desired functionality is achieved, irrespective ofarchitectures or intermedial components.

Also, various inventive concepts may be embodied as one or more methods,of which an example has been provided. The acts performed as part of themethod may be ordered in any suitable way. Accordingly, embodiments maybe constructed in which acts are performed in an order different thanillustrated, which may include performing some acts simultaneously, eventhough shown as sequential acts in illustrative embodiments.

All definitions, as defined and used herein, should be understood tocontrol over dictionary definitions, definitions in documentsincorporated by reference, and/or ordinary meanings of the definedterms.

The indefinite articles “a” and “an,” as used herein in thespecification and in the claims, unless clearly indicated to thecontrary, should be understood to mean “at least one.”

The phrase “and/or,” as used herein in the specification and in theclaims, should be understood to mean “either or both” of the elements soconjoined, i.e., elements that are conjunctively present in some casesand disjunctively present in other cases. Multiple elements listed with“and/or” should be construed in the same fashion, i.e., “one or more” ofthe elements so conjoined. Other elements may optionally be presentother than the elements specifically identified by the “and/or” clause,whether related or unrelated to those elements specifically identified.Thus, as a non-limiting example, a reference to “A and/or B”, when usedin conjunction with open-ended language such as “comprising” can refer,in one embodiment, to A only (optionally including elements other thanB); in another embodiment, to B only (optionally including elementsother than A); in yet another embodiment, to both A and B (optionallyincluding other elements); etc.

As used herein in the specification and in the claims, “or” should beunderstood to have the same meaning as “and/or” as defined above. Forexample, when separating items in a list, “or” or “and/or” shall beinterpreted as being inclusive, i.e., the inclusion of at least one, butalso including more than one, of a number or list of elements, and,optionally, additional unlisted items. Only terms clearly indicated tothe contrary, such as “only one of” or “exactly one of,” or, when usedin the claims, “consisting of,” will refer to the inclusion of exactlyone element of a number or list of elements. In general, the term “or”as used herein shall only be interpreted as indicating exclusivealternatives (i.e. “one or the other but not both”) when preceded byterms of exclusivity, such as “either,” “one of,” “only one of,” or“exactly one of.” “Consisting essentially of,” when used in the claims,shall have its ordinary meaning as used in the field of patent law.

As used herein in the specification and in the claims, the phrase “atleast one,” in reference to a list of one or more elements, should beunderstood to mean at least one element selected from any one or more ofthe elements in the list of elements, but not necessarily including atleast one of each and every element specifically listed within the listof elements and not excluding any combinations of elements in the listof elements. This definition also allows that elements may optionally bepresent other than the elements specifically identified within the listof elements to which the phrase “at least one” refers, whether relatedor unrelated to those elements specifically identified. Thus, as anon-limiting example, “at least one of A and B” (or, equivalently, “atleast one of A or B,” or, equivalently “at least one of A and/or B”) canrefer, in one embodiment, to at least one, optionally including morethan one, A, with no B present (and optionally including elements otherthan B); in another embodiment, to at least one, optionally includingmore than one, B, with no A present (and optionally including elementsother than A); in yet another embodiment, to at least one, optionallyincluding more than one, A, and at least one, optionally including morethan one, B (and optionally including other elements); etc.

In the claims, as well as in the specification above, all transitionalphrases such as “comprising,” “including,” “carrying,” “having,”“containing,” “involving,” “holding,” “composed of,” and the like are tobe understood to be open-ended, i.e., to mean including but not limitedto. Only the transitional phrases “consisting of” and “consistingessentially of” shall be closed or semi-closed transitional phrases,respectively, as set forth in the United States Patent Office Manual ofPatent Examining Procedures, Section 2111.03.

The foregoing description of illustrative embodiments has been presentedfor purposes of illustration and of description. It is not intended tobe exhaustive or limiting with respect to the precise form disclosed,and modifications and variations are possible in light of the aboveteachings or may be acquired from practice of the disclosed embodiments.It is intended that the scope of the invention be defined by the claimsappended hereto and their equivalents.

What is claimed is:
 1. A method of price discounting, the methodcomprising: communicating, by a processor, to a first user device of aplurality of user devices, information on a task to be performed by thefirst user device; receiving, by the processor, an indication that thefirst user device of the plurality of user devices has performed thetask to receive a viewing credit to view discounted prices of one ormore items; providing, by the processor, a viewing credit to viewdiscounted prices of items, the processor revealing discounted prices ofitems only to those user devices with sufficient viewing credits;receiving, by the processor, a request from the first user device toview a discounted price of an item; determining, by the processor, thatthe first user device has sufficient viewing credits to view thediscounted price of the item requested by the first user device; andresponsive to determining that the first user device has sufficientviewing credits to view the discounted price of the item, providing thefirst user device the discounted price of the item.
 2. The method ofclaim 1 further comprising providing the first user device anopportunity to purchase the item at the discounted price.
 3. The methodof claim 1, wherein the viewing credit corresponds to allowing the firstuser device to view a predetermined number of items.
 4. The method ofclaim 3 further comprising: maintaining a counter to track a number ofdiscounted prices of items viewed by the first user device; andadjusting the counter responsive to providing the first user device thediscounted price of the item.
 5. The method of claim 1, wherein theviewing credit corresponds to allowing the first user device to viewdiscounted prices of any number of items within a predetermined amountof time.
 6. The method of claim 5 further comprising maintaining a timerto track an amount of time the user device spends on viewing discountedprices of items.
 7. The method of claim 5, wherein responsive todetermining that the first user device has viewed discounted prices ofitems for a period of time that exceeds an amount of time correspondingto a number of viewing credits provided to the first user, denying arequest from the first user device to view discounted prices of anotheritem.
 8. The method of claim 1 further comprising: maintaining a countertracking a number of discount prices of items viewed by the first userdevice; determining that the counter exceeds a threshold count value;and communicating, by the processor, to the first user device,information on a second task to be performed by the first user device.9. The method of claim 1, further comprises: identifying a valueassociated with the task performed by the first user; and whereinproviding the viewing credit to view discounted prices of items includesproviding a viewing credit that corresponds to the identified valueassociated with the task performed by the first user.
 10. The method ofclaim 1, wherein communicating, to the first user, information on a taskto be performed by the first user, the task based on information aboutat least one of the item, the first user, the plurality of user devices,and a specification of the task by a third party.
 11. A system of pricediscounting, the system comprising: a processor; and memory havingprocessor executable instructions stored thereon, the processorconfigured to execute the processor executable instructions to:communicate to a first user device of a plurality of user devices,information on a task to be performed by the first user device; receivean indication that the first user device has performed a task to receivea viewing credit to view discounted prices of items; provide a viewingcredit to view discounted prices of items, the processor configured toreveal discounted prices of items only to those user devices withsufficient viewing credits; receive a request from the first user deviceto view discounted price of an item; determine that the first userdevice has sufficient viewing credits to view the discounted price ofthe item requested by the first user device; and responsive todetermining that the first user device has sufficient viewing credits toview the discounted price of the item, provide the first user device thediscounted price of the item.
 12. The system of claim 11, wherein theprocessor is further configured to provide the first user device anopportunity to purchase the item at the discounted price.
 13. The systemof claim 11, wherein the viewing credit corresponds to allowing thefirst user device to view a predetermined number of items.
 14. Thesystem of claim 13, wherein the processor is further configured to:maintain a counter to track a number of discounted prices of itemsviewed by the first user device; and adjust the counter responsive toproviding the first user device the discounted price of the item. 15.The system of claim 11, wherein the viewing credit corresponds toallowing the first user device to view discounted prices of any numberof items within a predetermined amount of time.
 16. The system of claim15, wherein the processor is further configured to maintain a timer totrack an amount of time the user device spends on viewing discountedprices of items
 17. The system of claim 15, wherein the processor isfurther configured to deny a request from the first user device to viewdiscounted prices of another item responsive to determining that thefirst user device has viewed discounted prices of items for a period oftime that exceeds an amount of time corresponding to a number of viewingcredits provided to the first user.
 18. The system of claim 11, whereinthe processor is further configured to: maintain a counter tracking anumber of discount prices of items viewed by the first user device;determine that the counter exceeds a threshold count value; andcommunicate, by the processor, to the first user device, information ona second task to be performed by the first user device.
 19. The systemof claim 11, wherein the processor is further configured to: identify avalue associated with the task performed by the first user; and whereinto provide the viewing credit to view discounted prices of items, theprocessor is configured to provide a viewing credit that corresponds tothe identified value associated with the task performed by the firstuser.
 20. The system of claim 11, wherein the task for whichinstructions are communicated is based on information about at least oneof the item, the first user, the plurality of user devices, and aspecification of the task by a third party.